<!DOCTYPE>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="utf-8">
    <title>Layui</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <link rel="stylesheet" th:href="@{/layui/css/layui.css}" media="all">
    <script th:src="@{/layui/layui.js}" charset="utf-8"></script>
    <!-- 注意：如果你直接复制所有代码到本地，上述css路径需要改成你本地的 -->
</head>
<body>
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
    <legend>管理员管理</legend>
</fieldset>
<br>
<from class="layui-form" action="" id="searchFrom">
    <div class="layui-form-item">
        <div class="layui-inline">
            <label class="layui-form-label">用户名</label>
            <div class="layui-input-inline">
                <input type="text" name="username" id="username" placeholder="请输入用户名" autocomplete="off"
                       class="layui-input">
            </div>
        </div>
        <div class="layui-inline">
            <label class="layui-form-label">身份</label>
            <div class="layui-input-inline">
                <input type="text" name="identity" id="identity" placeholder="请输入籍贯" autocomplete="off"
                       class="layui-input">
            </div>
        </div>
        <div class="layui-inline">
            <label class="layui-form-label">启用状态</label>
            <div class="layui-input-inline">
                <input type="tel" name="state" id="state" placeholder="请输入邮箱" autocomplete="off" class="layui-input">
            </div>


        </div>
        <div class="layui-inline">
            <button type="button" onclick="doSearch();" class="layui-btn" lay-filter="demo1">搜索</button>

        </div>
    </div>

</from>
<table class="layui-hide" id="test" lay-filter="test"></table>

<script type="text/html" id="toolbarDemo">
    <div class="layui-btn-container">
        <button class="layui-btn layui-btn-sm" lay-event="getCheckData">获取选中行数据</button>
        <button class="layui-btn layui-btn-sm" lay-event="getCheckLength">获取选中数目</button>
        <button class="layui-btn layui-btn-sm" lay-event="isAll">验证是否全选</button>
        <button class="layui-btn layui-btn-sm" lay-event="add">添加</button>
    </div>
</script>
<scritp type="text/html" id="switch">
    <input type="checkbox" value="0" name="state" lay-skin="switch" lay-text="启用|禁用"}>
</scritp>
<script type="text/html" id="barDemo">
    <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
</script>


<!-- 注意：如果你直接复制所有代码到本地，上述 JS 路径需要改成你本地的 -->

<script>
    var $,table;
    layui.use('table', function () {//加载表格模块
        table = layui.table;//获取表格对象
        $ = layui.jquery;




        //温馨提示：默认由前端自动合计当前行数据。从 layui 2.5.6 开始： 若接口直接返回了合计行数据，则优先读取接口合计行数据。
        //详见：https://www.layui.com/doc/modules/table.html#totalRow
        table.render({
            elem: '#test'
            , url: '/stuinfo/listJson'
            , toolbar: '#toolbarDemo'
            , title: '用户数据表'
            , totalRow: true
            , cols: [
                [
                    {type: 'checkbox', fixed: 'left'}
                    , {
                    field: 'id',
                    title: 'ID',
                    width: 80,
                    fixed: 'left',
                    unresize: true,
                    sort: true,
                    totalRowText: '合计'
                }
                    , {field: 'username', title: '用户名', width: 120}
                    , {field: 'password', title: '密码', width: 120}
                    , {field: 'identity', title: '等级', width: 120}
                    , {field: 'state', title: '是否启用', width: 120}
                    , {field: 'right', title: '操作', toolbar: '#barDemo', width: 150}

                ]
            ]
            , page: true
            , limit: 7
            , limits: [7, 8, 9, 10]
            ,id:'orderTable'
        });

        //工具栏事件
        table.on('toolbar(test)', function (obj) {
            var checkStatus = table.checkStatus(obj.config.id);
            switch (obj.event) {
                case 'getCheckData':
                    var data = checkStatus.data;
                    layer.alert(JSON.stringify(data));
                    break;
                case 'getCheckLength':
                    var data = checkStatus.data;
                    layer.msg('选中了：' + data.length + ' 个');
                    break;
                case 'isAll':
                    layer.msg(checkStatus.isAll ? '全选' : '未全选');
                    break;
                case 'add':

                    parent.layer.open({
                        type: 2,//2跳转添加页面
                        offset: 'auto',
                        title: '添加课程订单',
                        content: '/stuinfo/add',
                        area: ['1000px', '600px'],
                        btn: '关闭全部',
                        btnAlign: 'c',
                        yes: function () {
                            parent.layer.closeAll();
                        }
                    });
                    break;
            }
            ;
        });
        //触发行双击事件
        table.on('rowDouble(test)', function (obj) {
            //obj 同上
            var orderId = obj.data.id;
            // alert(orderId);
            parent.layer.open({
                type: 2,//2跳转添加页面
                offset: 'auto',
                title: '添加课程订单',
                content: '/stuinfo/detail?id=' + orderId,
                area: ['1000px', '600px'],
                btn: '关闭全部',
                btnAlign: 'c',
                yes: function () {
                    parent.layer.closeAll();
                }
            });
        });

        //工具条事件
        table.on('tool(test)', function (obj) { //注：tool 是工具条事件名，test 是 table 原始容器的属性 lay-filter="对应的值"
            var orderId = obj.data.id; //获得当前行数据
            var layEvent = obj.event; //获得 lay-event 对应的值（也可以是表头的 event 参数对应的值）

            if (layEvent === 'del') { //删除
                layer.confirm('真的删除行么', function (index) {
                    obj.del(); //删除对应行（tr）的DOM结构，并更新缓存
                    layer.close(index);
                    //向服务端发送删除指令
                    $.get("/stuinfo/delete", {id: orderId}, function (respData) {
                        if (respData.success == 1) {
                            layer.msg("删除成功");
                        } else {
                            layer.msg("删除失败" + respData.message)
                        }
                    })

                });
            } else if (layEvent === 'edit') {
                parent.layer.open({
                    type: 2,//2跳转添加页面
                    offset: 'auto',
                    title: '修改课程订单',
                    content: '/stuinfo/change?id=' + orderId,
                    area: ['1000px', '600px'],
                    btn: '关闭全部',
                    btnAlign: 'c',
                    yes: function () {
                        parent.layer.closeAll();
                    }
                });
            }
        });
    });
    function doSearch(){
        //通过jquery获取参数
        var username = $("#username").val();
        var identity = $("#identity").val();
        var state = $("#state").val();
        table.reload('orderTable',{
            where:{//附加额外条件
                username:username,
                identity:identity,
                state:state
            },page: {
                curr:1
            }
        });
    }

</script>

</body>
</html>